ALL, DISTINCT, DISTINCTROW, TOP û przyk│ad predykat≤w

W tym przyk│adzie tworzona jest kwerenda sprzΩgaj╣ca tabele Klienci i Zam≤wienia wed│ug pola KodKlienta. Tabela Klienci nie zawiera powtarzaj╣cych siΩ warto£ci w polu KodKlienta, w przeciwie±stwie do tabeli Zam≤wienia, gdzie mo┐e znajdowaµ siΩ wiele zam≤wie± od jednego klienta. U┐ycie s│owa kluczowego DISTINCTROW powoduje utworzenie listy firm, kt≤re z│o┐y│y co najmniej jedno zam≤wienie. Lista nie zawiera szczeg≤│≤w dotycz╣cych tych zam≤wie±.

Sub AllDistinctX()

    Dim dbs As Database, rst As Recordset

    ' Zmodyfikuj ten wiersz tak, by £cie┐ka wskazywa│a

    ' na rzeczywist╣ bazΩ danych Northwind.

    Set dbs = OpenDatabase("Northwind.mdb")

    

    ' Dokonaj sprzΩ┐enia tabel Klienci i Zam≤wienia

    ' sk│adaj╣cy siΩ z pola KodKlienta. Wybierz listΩ firm

    ' posiadaj╣cych co najmniej jedno zam≤wienie.

    Set rst = dbs.OpenRecordset("SELECT DISTINCTROW " _

        & "NazwaFirmy FROM Klienci " _

        & "INNER JOIN Zam≤wienia " _

        & "ON Klienci.KodKlienta = " _

        & "Zam≤wienia.KodKlienta " _

        & "ORDER BY NazwaFirmy;")

    

    ' Zape│nij obiekt Recordset.

    rst.MoveLast

    

    ' Wywo│aj procedurΩ WyliczPola w celu

    ' wydrukowania zawarto£ci obiektu Recordset. Przeka┐ obiekt

    ' Recordset i wymagan╣ szeroko£µ pola.

    WyliczPola rst, 25

    dbs.Close

End Sub